/***************************************************************************************************
 * Copyright 2025-2025 x-tools-author(x-tools@outlook.com). All rights reserved.
 *
 * The file is encoded using "utf8 with bom", it is a part of xTools project.
 *
 * xTools is licensed according to the terms in the file LICENCE(GPL V3) in the root of the source
 * code directory.
 **************************************************************************************************/
#pragma once

#include <QStandardItemModel>

namespace xModbus {

class ModbusDevice;
class RegisterModel;
class ModbusDeviceListModel : public QStandardItemModel
{
    Q_OBJECT
public:
    explicit ModbusDeviceListModel(QWidget *parent = nullptr);
    ~ModbusDeviceListModel() override;

    void addDevice(ModbusDevice *device);
    void addRegisterTable(ModbusDevice *device, RegisterModel *model);

    Qt::ItemFlags flags(const QModelIndex &index) const override;
};

} // namespace xModbus